package whf.framework.meta.entity;

/**
 * @author wanghaifeng
 *
 */
public abstract interface IWriteonlyProperty {

	/**
	 * @return property data type
	 */
	public void setDataType(String dataType) ;

	/**
	 * @return property display title;
	 */
	public void setDisplayTitle(String displayLabel);

	/**
	 * @return display width
	 * 显示宽度
	 */
	public void setDisplayWidth(int width);
	
	/**
	 * @return display type, such as text, select etc.
	 */
	public void setDisplayType(String displayType) ;
	
	/**
	 * @return property is visible when display
	 */
	public void setVisible(boolean visible);
	
	//The max value and the min value
	public void setMaxValue(String value);
	
	public void setMinValue(String value);
	
	//property is required
	public void setRequired(boolean required);
	
	//if String, maxLength;
	public void setMaxLength(int length);
	
	//if bo, use query string search objects;
	/**
	 * @modify wanghaifeng Sep 29, 2006 1:14:56 PM
	 * @return 缺省指的是过滤字符串,但是如果使用#开头表示系统保留对象
	 */
	public void setQueryString(String query);
	
	//use as property values; 2006-07-11
	public void setDictCategoryCode(String code);
	
	//use as text area  2006-07-11
	public void setAllowMultiRows(boolean allow);
	
	//use as html attributes,such as cols='2' rows='2' etc.  2006-07-11
	public void setHtmlAttributes(String attr);
	
	//hyper link 2006-07-11
	public void setHyperLink(String link);
	
	//java script function
	public void setJsFunction(String func);
	
	public void setVisibleLevel(int level);
	
	public void setEditableLevel(int level);
	
	public void setColspan(int span);
	
	//query condition
	
	public void setQueryCondition(boolean query);
	
	//设置此属性后，列表中将可以显示，但是在编辑过程将不能显示；
	
	public void setReadonly(boolean readonly);
	
	//是否枚举选项
	/**
	 * 当枚举对象时,如果displayType=select,界面采用<select>方式展现
	 * @modify wanghaifeng Sep 29, 2006 1:16:25 PM
	 * @return
	 */
	public void setEnumSelections(boolean enumSelections);
	
	public void setViewObjectDetail(boolean value);
	
	public void setRemarks(String value);

	//验证用正则表达式
	public void setRegexPattern(String str);
	
	//正则表达式例子
	public void setRegexPatternSample(String sample);
}
